Power management scheme for portable data collection devices utilizing location and position sensors

ABSTRACT

A data collection device (DCD) is placed in a first low power mode after the DCD has been in a first predetermined position, and placed in a second low power mode after a first predetermined period of time. In another embodiment the DCD includes a wireless telephone, and a proximity sensor which detects when the DCD is close to a user&#39;s face, wherein the telephone is automatically put in a handset mode when the DCD is close to a user&#39;s face, and automatically put in a speakerphone mode when the DCD is not close to a user&#39;s face.

FIELD OF THE INVENTION

This invention relates to the management of remote devices such asportable data terminals (PDTs), and more particularly to an interfacefor managing the remote devices.

BACKGROUND OF THE INVENTION

Optimizing power management to maximize the available energy budget inportable data terminal is a constant struggle. Due to an increasedperipheral set, ruggedized portable data terminals are particularlyproblematic with respect to power management issues. It is desirable toput the portable data terminal into a low power state whenever theoperator is not actively using the device. Many systems implement timebased inactivity determination. However, time based systems are muchless efficient at managing energy consumption.

The remote devices can have the ability to have there configurationchanged or to have a new application program installed while away fromthe central office. U.S. Patent Publication No. 2009/0044003 A1 toBerthiaume et al. teaches such a method, and is hereby incorporated byreference.

The remote devices can be managed by Remote Device Management (RDM)systems that allow an RDM user to manage the remote devices includingupdating configurations and device software, and to track problems whichmay be common to several devices, and provide fixes for these problemswhere feasible.

However, some RDM systems accumulate vast amounts of diagnostic andperformance data. Organizing the data in a clear, concise, meaningful,and intuitive way on the graphical user interface of a computer displayis a problem. Either too much data is presented so as to be clutteredand confusing, or the user has to navigate through multiple, sometimesnon-intuitive, dialogs to access desired information.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a front view of a data collection device (DCD) according toone embodiment of the present invention;

FIG. 2 is a block diagram of the DCD shown in FIG. 1;

FIGS. 3A, 3B, and 3C are flow charts according to an embodiment of aprocess for power management which may be used in the DCD shown in FIG.1;

FIG. 4 is a flow chart according to another embodiment of a process forpower management which may be used with the DCD shown in FIG. 1;

FIG. 5 is a side view of a DCD according to another embodiment of thepresent invention; and

FIG. 6 is a flow chart according to an embodiment of a process for powermanagement which may be used with the DCD shown in FIG. 5.

It will be appreciated that for purposes of clarity and where deemedappropriate, reference numerals have been repeated in the figures toindicate corresponding features. Also, the relative size of variousobjects in the drawings has in some cases been distorted to more clearlyshow the invention.

DETAILED DESCRIPTION

Turning now to the drawings, FIG. 1 shows a data collection device (DCD)10, which may be a Personal Digital Assistant (PDA), according to oneembodiment of the present invention. The DCD 10 has a main body 12 withan antenna 14 attached to the main body 12. A keypad 16 is located inthe lower portion of the DCD 10, and a display 18 is located in an upperportion of the DCD 10. A touch sensitive panel 20 is superimposed on thedisplay 18 for allowing a user to select options on the displaydirectly.

Located above the display 18 is a combination ambient light sensor andproximity sensor 22, which may include a LED 24, a combinationphotodiode array and optical filter 26 to detect the amount of ambientlight in the wavelengths detected by the human eye, and a secondcombination photodiode array and optical filter 28 to detect the amountof light in the infrared range which is used for proximity detection.Located slightly above and to the right of the combination ambient lightsensor and proximity sensor 22 is a handset speaker 30 (shown in FIG. 2)located behind six holes 32. The keypad 16 includes a scan key 34 foractivating a bar code scanner built into the DCD 10. The keypad 16 alsoincludes a send key 38 which may be used to begin a conversation with awireless telephone built into the DCD 10. Also shown in FIG. 1 is athree axis diagram 40 indicating the orientation of a three axisaccelerometer 42 (shown in FIG. 2) built into the DCD 10.

FIG. 2 is a block diagram 48 of the DCD 10 shown in FIG. 1. Those ofordinary skill in the art will recognize that the illustrated design ofthe DCD 10 has been simplified so as to permit a briefer explanation ofsystems and components not directly related to the present invention.

A central processing unit (CPU) 50 receives data from and outputs datato other sub-systems for storage, transmission and additionalprocessing. CPU 50 may be implemented using any number of off the shelfsolutions including: embedded processors; general purpose processors;any number of RISC processors; or any number of custom solutionsincluding pre-configured floating point gate arrays (FPGAs); andapplication specific integrated circuits (ASICs). Overall operation ofthe CPU 50 is controlled by software or firmware, typically referred toas an operating system which may be stored in one or more memorylocations 52 n, including RAM 52 a and FLASH memory 52 b. Examples ofsuitable operating systems for DCD 10 include SYMBIAN: WINDOWS MOBIL,WINDOWS CE, WINDOWS XP, LINUX, PALM, and OSX. In general, communicationto and from the CPU 50 and among the various sub-components takes placevia one or more ports or busses, including a main system bus 54, and I²Cbus 56; a plurality of Universal Asynchronous Receivers/Transmitter(UART) ports 58 n, Universal Serial. Busses (USB) 60 n, and a RS-232port 62.

The illustrated CPU 50 is coupled to the display 18 through a LCDcontroller 63 and to the touch sensitive panel 20 which has anintegrated controller 64. The combination of the display 18 and thetouch sensitive panel 20 is often referred to as a “touch screen.” Thetouch sensitive panel 20 may be in communication with the CPU 50 and anauxiliary processor 66 via the I²C bus 56.

The DCD 10 may further include a plurality of wireless communicationlinks such as an 802.11 communication link 68, an 802.16 communicationlink 70, a communication link 72 for telephone (phone) communicationwith a cellular network such as a network in accordance with the GlobalSystem for Mobile Communications (GSM) or one that conforms to the CodeDivision Multiple Access (CDMA) standard, an IR communication link 74,and/or a Bluetooth communication link 76. Each of these linksfacilitates communication with a remote device and may be used totransfer and receive data. Other possible links include: an 802.15.4link, a UMTS link, and a HSPDA link.

A variety of secondary processors may be provided to perform general andapplication specific functions. The example illustrated in FIG. 2provides two such processors: a field programmable gate array (FPGA) 80and the auxiliary processor 66. The FPGA 80 may comprise any of a numberof FPGAs including the Virtex-4 family of FPGAs available from XILINX.The auxiliary processor 66 may comprise any of a number of embedded (orgeneral purpose) processors, including one of the AVR RISC processorsavailable from ATMEL CORPORATION.

The auxiliary processor 66 may interface with a variety of data inputdevices including, for example, the keypad 16 and the scan key 34. Byway of example, the DCD 10 may be configured so that displayed menuoptions are selected by physically depressing a key on the keypad 16 oractivating the touch screen 20 with use of a finger or stylus. The scankey 34 may be used for initiating and controlling one or more datacollection systems, such as an image signal generating system 82.Although not shown in FIG. 2, the DCD 10 may also contain an RFIDsensing system and a magnetic strip reader which may be initiated withthe scan key 34.

The data collection system (e.g. the image signal generating system 82)may be controlled by the FPGA 80. In this case, the FPGA 80 initiatesand controls the operation of the data collection systems andaccumulates data received there from prior to depositing such data inmemory 52 n. Possible configurations of FPGA 80 are illustrated in U.S.Pat. No. 6,947,612 incorporated herein by reference. The image signalgenerating system 82 generally comprises a solid state image sensor 84useful for imaging bar code 86 on a package 88.

The three axis accelerometer 42 and the ambient light and proximitysensors 22 are coupled to the main system bus 54. The three axisaccelerometer may be made by Analog Devices, and the combination ambientlight sensor and proximity sensor made by Intersil Corp. The DCD 10 mayinclude a keypad light 90 used to illuminate the keypad 16. An audioprocessing circuit 92, connected to the main system bus 54, drives aspeaker 94, located on the back of the DCD 10, used when the DCD 10 isin a speakerphone or hands free mode, the handset speaker 30, and amicrophone 96 which may be located on a side of the DCD 10.

A power circuit 100 is supplied for the controlling supplying of powerto the DCD 10. The power circuit 100 generally comprises a series ofpower supplies 102 n that regulate the power supplied to the variouscomponents of the DCD 10. Each power supply 102 n generally comprises astep up or step down circuit connected to each of the various componentsin the DCD 10 that require the particular voltage output by that powersupply 102 n. In particular, the CPU 50 receives power form a powersupply 102 d, the display 18 receives power from the power supply 102 b,the touch sensitive panel 20 receives power from the power supply 102 a,and the keypad light 90 receives power from a power supply 102 e.Although separate power supplies, 102 a, 102 b, and 102 e, are shown toprovide power to the touch sensitive panel 20, the display 18, and thekeypad light 90, respectively, two or more of these power supplies maybe combined and drive two or more of these components.

The power supplies 102 n receive electricity from a power bus 103 whichis, in turn, supplied by a battery 104 or may be supplied by a secondpower input on the connector 106. A connector 106 may comprise anynumber of known connection technologies, such as the D (or sub-D) Seriesof circular plastic connectors or the HCL D-sub derivative design datatransfer connector. Certain pins of the connector 106 may be dedicatedto receiving DC power, while other pins are dedicated to one or morecommunication paths, e.g. RS-232 and USB. It may also prove advantageousto provide DC power out, for example from a power supply 102 c, so as topower tethered accessories, such as external magnetic stripe or RFIDreaders (not shown).

The battery 104 may be selected from any of a variety of batterytechnologies including fuel cell, NiMh, NiCd, Li Ion, or Li Polymer. Thebattery 104 is charged by a charge circuit 110 which receives power fromthe connector 106. The charge circuit 110 may comprise any of a numberof available circuits.

A switch 112 isolates the battery based upon the presence of power fromthe connector 106. Thus, when an external power supply is connected tothe connector 106, the switch 112 is opened and the battery is isolatedfrom the power supplies 102 n and may be charged via the charge circuit110. Once power is removed from the connector 106, the battery isconnected to the power supplies 102 n.

The power consumption of any system in a sleep state may vary based onthe system and sleep routines associated therewith. For example, a CPUmay have a plurality of sleep states each of which has a different powerprofile and active functions. Accordingly, as used herein, the termsleep state will generally refer to a state in which one or morecomponents or functions of a system or sub-subsystem are inactivated orlimited in a manner known in the art by software in the CPU 50 so as toreduce power consumption. FIGS. 3A, 3B, and 3C are flow charts accordingto one embodiment of a process for power management which may be used inthe DCD shown in FIG. 1. Beginning at letter A in FIG. 3A, with timersT1, T2, and T3 set to zero, the three axis accelerometer 42 detects ifthe DCD 10 has been put front down in decision block 130. The term“front down” means that the three axis accelerometer detects the earth'sgravity in the positive Z direction indicated in FIG. 1, and essentiallyno pull of gravity in either the X or Y directions. If the DCD 10 is notfront down, then the flow chart of FIG. 3A branches to letter B whichcontinues in FIG. 3B. If the DCD 10 is lying front down then, becausethe display 18 and keypad 16 are not in use, the display 18, touchsensitive panel 20 and keypad light 90 are turned off to put the DCD 10into a first sleep state as shown in block 132. There may be a shortdelay before the first sleep state is activated after the DCD 10 isturned front down to avoid entering a low power state inadvertently.Then a first timer T1 is started as shown in block 134. The timer T1 maybe implemented by starting the timer with a predetermined time, and oncestarted, decremented until the timer T1 times out by reaching zero.After the timer T1 has started the three axis accelerometer 42, thekeypad 16, and the phone in the DCD 10 are monitored to detect if theDCD 10 is moving, whether a key on the keypad 16 is depressed, orwhether the phone in the DCD is in use in decision block 136. If none ofthese events has occurred, then the timer T1 is checked to see if it hastimed out in decision block 138. If not then the state of the DCD 10passes to the decision block 136. Thus the three axis accelerometer 42,the keypad 16, and the phone in the DCD 10 are monitored to detect ifthe DCD 10 is moving, whether a key on the keypad 16 is depressed, orwhether the phone in the DCD is in use during the time that the timer T1is operating.

If, during the period of time that the DCD 10 is monitoring the threeaxis accelerometer 42, the keypad 16, and the use of the phone in theDCD 10 in decision block 136, if the DCD 10 is moved, a key on thekeypad 16 is depressed, or the phone in the DCD is in use, then timer T1is reset in block 140, and the state of the DCD 10 passes from block 140to decision block 130.

If the timer T1 has timed out in decision block 138, then the DCD 10will enter sleep state 2 as indicated in block 142. Once the DCD 10 isin sleep state 2 the three axis accelerometer 42 and the keypad 16 aremonitored to determine if the DCD 10 is moving or if a key on the keypad 16 has been depressed as indicated in decision block 144. If the DCD10 is moved or a key depressed, then the DCD 10 is woken up to allownormal operation, and the timer T1 is reset as indicated in block 146.The state of the DCD 10 then passes to the decision block 130.

If the DCD 10 is not lying front down when the test in decision block130 is made, then state of the DCD 10 passes to the decision block 150in FIG. 3B. In decision block 150 the three axis accelerometer 42detects if the DCD 10 has been put back down. If not then the flow chartof FIG. 3B branches to letter C which continues in FIG. 3C. If the DCD10 is lying back down then a second timer T2 is started as shown inblock 152. The timer T2 may be implemented by starting the timer with apredetermined time, and once started, decremented until the timer T2times out by reaching zero. After the timer T2 has started the threeaxis accelerometer 42, the keypad 16, and the phone in the DCD 10 aremonitored to detect if the DCD 10 is moving, whether a key on the keypad16 is depressed, or whether the phone in the DCD is in use in decisionblock 154. If none of these events has occurred, then the timer T2 ischecked to see if it has timed out in decision block 156. If not thenthe state of the DCD 10 passes to the decision block 154. Thus the threeaxis accelerometer 42, the keypad 16, and the phone in the DCD 10 aremonitored to detect if the DCD 10 is moving, whether a key on the keypad16 is depressed, or whether the phone in the DCD is in use during thetime that the timer T2 is operating.

If during the period of time that the DCD 10 is monitoring the threeaxis accelerometer 42, the keypad 16, and the use of the phone in theDCD 10 in decision block 136, if the DCD 10 is moved, a key on thekeypad 16 is depressed, or the phone in the DCD is in use, then timer T2is reset in block 158, and the state of the DCD 10 passes from block 158to decision block 130 in FIG. 3A.

If the timer T2 has timed out in decision block 156, then the DCD 10will enter sleep state 3 as indicated in block 160. Once the DCD 10 isin sleep state 3 the three axis accelerometer 42 and the keypad 16 aremonitored to determine if the DCD 10 is moving or if a key on the keypad 16 has been depressed as indicated in decision block 162. If the DCD10 is moved or a key depressed, then the DCD 10 is woken up to allownormal operation, and the timer T2 is reset as indicated in block 164.The state of the DCD 10 then passes to the decision block 130 in FIG.3A.

If the DCD 10 is not lying back down when the test in decision block 150is made, then the state of the DCD 10 passes to the decision block 170in FIG. 3C. In decision block 170 the three axis accelerometer 42, thekeypad 16, and the phone in the DCD 10 are monitored to detect if theDCD 10 is moving, whether a key on the keypad 16 is depressed, orwhether the phone in the DCD is in use. If the DCD 10 is moving, a keyon the keypad 16 is depressed, or the phone in the DCD is in use, thenthe flow chart of FIG. 3C branches to decision block 130 in FIG. 3A. Ifthe DCD 10 is not moving, if none of the keys on the keypad 16 isdepressed, and if the phone in the DCD is not in use, then a third timerT3 is started as shown in block 172. The timer T3 may be implemented bystarting the timer with a predetermined time, and once started,decremented until the timer T3 times out by reaching zero. After thetimer T3 has started the three axis accelerometer 42, the keypad 16, andthe phone in the DCD 10 are monitored to detect if the DCD 10 is moving,whether a key on the keypad 16 is depressed, or whether the phone in theDCD is in use in decision block 174. If none of these events hasoccurred, then the timer T3 is checked to see if it has timed out indecision block 176. If not then the state of the DCD 10 passes to thedecision block 174. Thus the three axis accelerometer 42, the keypad 16,and the phone in the DCD 10 are monitored to detect if the DCD 10 ismoving, whether a key on the keypad 16 is depressed, or whether thephone in the DCD is in use during the time that the timer T3 isoperating. If, during the period of time that the DCD 10 is monitoringthe three axis accelerometer 42, the keypad 16, and the use of the phonein the DCD 10 in decision block 136, if the DCD 10 is moved, a key onthe keypad 16 is depressed, or the phone in the DCD is in use, thentimer T3 is reset in block 158, and the state of the DCD 10 passes fromblock 158 to decision block 130 in FIG. 3A.

If the timer T3 has timed out in decision block 176, then the DCD 10will enter sleep state 4 as indicated in block 180. Once the DCD 10 isin sleep state 4 the three axis accelerometer 42 and the keypad 16 aremonitored to determine if the DCD 10 is moving or if a key on the keypad 16 has been depressed as indicated in decision block 182. If the DCD10 is moved or a key depressed, then the DCD 10 is woken up to allownormal operation, and the timer T3 is reset as indicated in block 184.The state of the DCD 10 then passes to the decision block 130 in FIG.3A.

By way of example, the DCD 10 may be put front down and enter into sleepstate 1, and, after the timer T1 has timed out, enter sleep state 2.Then, after the DCD 10 has been used, the DCD 10 may be put back downand, after timer T2 has timed out, enter sleep state 3. Then after theDCD 10 has been used again, the DCD 10 may be put in a position which isneither front down or back dawn, and, after timer T3 has timed out,enter into sleep state 4.

Although the timers T1, T2, and T3 are shown and described as separatetimers, one or two timers may be used for timers T1, T2, and T3.Similarly, although the sleep states 2, 3, and 4 are shown and describedas separate sleep states, one or two sleep states may be used for sleepstates 2, 3, and 4.

The time out times of the timers T1, T2, and T3 is made considering thepower to be saved and whether a user would find the time out times soshort as to be a nuisance. For example a time out time which is shortenough to put the DCD 10 in a sleep state when a user puts the DCD 10down long enough to move a package would be an inconvenience to the usersince the user would have to wait for the DCD 10 to wake up. In additionto the sleep times shown in FIGS. 3A, 3B, and 3C, the operating systemsoftware used in the DCD 10 may include an inactivity timer that putsthe DCD 10 into a sleep state when the operating system detects thatthere has not been any activity for a predetermined time. For example,the operating system might have an inactivity timer set for 10 minutes,while the time T1 may be set for one minute, the timer T2 set for 5minutes, and the timer T3 set for 8 minutes. Thus if the DCD 10 is notused while in a moving vehicle the operating system inactivity timerwould put the DCD 10 in a sleep state after 10 minutes. FIG. 4 is a flowchart showing another process for power management which may be usedwith the DCD 10. FIG. 4 also shows a process for automatically switchingthe DCD phone between handset mode and speakerphone mode. The processshown in FIG. 4 begins when the DCD 10 phone is turned on as indicatedby circle 190. When the DCD 10 phone is turned on the proximity sensorportion of the combination ambient light sensor and proximity sensor 22is enabled. The proximity sensor portion includes the LED 24 and thecombination photodiode array and optical filter 28. Since the LED 24draws a not insignificant amount of current when turned on, it may onlybe enabled when the DCD 10 phone is in use, and the proximity portionmay be turned on and off periodically when the DCD 10 phone is in use tofurther conserve power in the DCD 10. After the proximity detectionportion is enabled, a determination is made in decision block 194whether the DCD 10 is close to a user's face as generally would be thecase if the DCD 10 phone was used as a handset. If the DCD 10 phone isnot close to a user's face, the DCD 10 is then switched to thespeakerphone mode if it was in the handset mode before as shown in block196. In which case the handset speaker 94 would be disabled and thespeakerphone speaker 30 would be enabled. Then the proximity detectorportion is used again to determine if the DCD 10 is close to a user'sface in decision block 194.

If the proximity detection portion determines that the phone is close toa user's face, then the DCD 10 phone is switched to the handset mode ifit was in the speakerphone mode before as shown in block 198 to disablethe speakerphone speaker 30 and enable the handset speaker 94. Then thepower to the display 18, the touch sensitive panel 20, and the keypadlight 90 is turned off. The power to the touch panel 20 is turned off tonot only save power but to also prevent the DCD 10 from performing anunwanted operation caused by the touch sensitive panel 20 touching auser's cheek while the user is using the phone in the handset mode. Thenthe proximity detector portion is used again to determine if the DCD 10is close to a user's face in decision block 194.

The threshold set for the proximity detector for determining if the DCD10 is close to a user's face depends of the infrared reflectance of auser's face, the color of a user's hair, etc.

FIG. 5 is a side view of another DCD 300 according to another embodimentof the present invention. The DCD 300 may be the DCD 10 with a handle302 attached. The handle does not allow the DCD 300 to be put down onits back side, but instead may be put down leaning on a side edge of theDCD 10 and the end of the handle 302. FIG. 6 is a flow chart showing aprocess for power management which may be used with the DCD 300. FIG. 6is FIG. 3B with decision block 310 substituted for decision block 150 inFIG. 3B. Thus the software used to detect if the DCD 10 in back sidedown in the process shown in FIG. 3B would be modified to recognize thateither of the two leaning positions of the DCD 300 is equivalent to theDCD 10 lying back down. In some uses of the DCD 300 the DCD 300 mayoften be stored in another orientation such as with the top edge facingdown as when the DCD 300 is stored between a handle on a cart and anedge of the cart. The software could be modified to recognize thisorientation as equivalent to the DCD 10 lying back down.

While the invention has been described with reference to particularembodiments, it will be understood by those skilled in the art thatvarious changes may be made and equivalents may be substituted forelements thereof without departing from the scope of the invention. Inaddition, many modifications may be made to adapt a particular situationor material to the teachings of the invention without departing from thescope of the invention.

-   -   Therefore, it is intended that the invention not be limited to        the particular embodiments disclosed as the best mode        contemplated for carrying out this invention, but that the        invention will include all embodiments falling within the scope        and spirit of the appended claims.

The invention claimed is:
 1. A data collection device (DCD), comprisinga motion sensor, a proximity detector, a keypad, a memory, a processorin communications with the memory, and a phone, wherein the DCD isconfigured to perform a method comprising: placing the DCD in a firstlow power mode responsive to the DCD being front down for a firstpredetermined period of time; placing the DCD in the first low powermode in a second low power mode responsive to the DCD being back downfor a second predetermined period, wherein the second predeterminedperiod of time is longer than the first predetermined period of time;placing the DCD in the second power mode in a third low power moderesponsive to the DCD being in a position that is neither front down norback down for a third predetermined period of time, wherein the thirdpredetermined period of time is longer than the second predeterminedperiod of time; and placing the DCD in one of the first power mode, thesecond power mode, or the third power mode in a reduced power state whenthe proximity detector detects the DCD is close to a user's face,wherein said reduced power states comprises a speakerphone or hands freemode.
 2. The DCD of claim 1 wherein the second low power mode followsthe first low power mode before the DCD returns to the first low powermode.
 3. The DCD of claim 1, further comprising: placing the DCD in thefirst low power mode after it has been in a first position for a secondpredetermined time period.
 4. The DCD of claim 1, wherein a sleep stateis the second low power mode if the DCD is in a second predeterminedposition.
 5. The DCD of claim 1, wherein the DCD enters the first lowpower mode substantially immediately after the DCD is placed face down.6. A method for managing power in a data collection device (DCD),wherein the DCD comprises a motion sensor, a proximity detector, akeypad, and a phone, the method comprising: placing the DCD in a firstlow power mode responsive to the DCD being front down for a firstpredetermined period of time; placing the DCD in the first low powermode in a second low power mode responsive to the DCD being back downfor a second predetermined period, wherein the second predeterminedperiod of time is longer than the first predetermined period of time;placing the DCD in the second power mode in a third low power moderesponsive to the DCD being in a position that is neither front down norback down for a third predetermined period of time, wherein the thirdpredetermined period of time is longer than the second predeterminedperiod of time; and placing the DCD in one of the first power mode, thesecond power mode, or the third power mode in a reduced power state whenthe proximity detector detects the DCD is close to a user's face,wherein said reduced power states comprises a speakerphone or hands freemode.
 7. The method of claim 6, further comprising: placing the DCD in afourth low power mode substantially after the DCD has been placed frontdown.
 8. The method of claim 7 wherein DCD uses less power in the fourthlow power mode than in the first, second, or third power modes.